package com.vhall.component.controller.rbac.facade;

import com.vhall.component.entity.rbac.vo.ActionAddReqVO;
import com.vhall.component.entity.rbac.vo.ActionDeleteReqVO;
import com.vhall.component.entity.rbac.vo.ActionEditReqVO;
import com.vhall.component.entity.rbac.vo.ActionsVO;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;

/**
 * 操作
 *
 * @author longzhen.gong
 * @date 2021/6/11 11:16
 */
@FeignClient(name = "RbacActionFacade", path = "/v4/rbac/action")
public interface RbacActionFacade {

    /**
     * 操作-添加
     *
     * @param reqVO 参数
     * @return 返回值
     */
    @ApiOperation("操作-添加")
    @PostMapping(value = "/add")
    ActionsVO add(@Validated ActionAddReqVO reqVO);

    /**
     * 操作-删除
     *
     * @param reqVO 参数
     * @return 返回值
     */
    @ApiOperation("操作-删除")
    @PostMapping(value = "/delete")
    Boolean delete(@Validated ActionDeleteReqVO reqVO);

    /**
     * 操作-编辑
     *
     * @param reqVO 参数
     * @return 返回值
     */
    @ApiOperation("操作-编辑")
    @PostMapping(value = "/edit")
    Boolean edit(@Validated ActionEditReqVO reqVO);

}
